package com.sys.SysSales.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.sys.common.annotation.Excel;
import com.sys.common.core.domain.BaseEntity;

/**
 * 产品库存对象 sys_sales_inventory
 * 
 * @author ruoyi
 * @date 2025-09-26
 */
@Data
public class SysSalesInventory extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long inventoryId;

    /** 产品ID */
    @Excel(name = "产品ID")
    private Long productId;

    /** 当前库存量 */
    @Excel(name = "当前库存量")
    private BigDecimal currentQuantity;

    /** 锁定库存量 */
    @Excel(name = "锁定库存量")
    private BigDecimal lockedQuantity;

    /** 可用库存量 */
    @Excel(name = "可用库存量")
    private BigDecimal availableQuantity;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createdBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 修改人 */
    @Excel(name = "修改人")
    private String updatedBy;

    /** 修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updatedAt;

    /** 库存记录最后修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "库存记录最后修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastUpdated;

    /** 产品SKU */
    @Excel(name = "产品SKU")
    private String sku;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String name;

//    public void setInventoryId(Long inventoryId)
//    {
//        this.inventoryId = inventoryId;
//    }
//
//    public Long getInventoryId()
//    {
//        return inventoryId;
//    }
//
//    public void setProductId(Long productId)
//    {
//        this.productId = productId;
//    }
//
//    public Long getProductId()
//    {
//        return productId;
//    }
//
//    public void setCurrentQuantity(BigDecimal currentQuantity)
//    {
//        this.currentQuantity = currentQuantity;
//    }
//
//    public BigDecimal getCurrentQuantity()
//    {
//        return currentQuantity;
//    }
//
//    public void setLockedQuantity(BigDecimal lockedQuantity)
//    {
//        this.lockedQuantity = lockedQuantity;
//    }
//
//    public BigDecimal getLockedQuantity()
//    {
//        return lockedQuantity;
//    }
//
//    public void setAvailableQuantity(BigDecimal availableQuantity)
//    {
//        this.availableQuantity = availableQuantity;
//    }
//
//    public BigDecimal getAvailableQuantity()
//    {
//        return availableQuantity;
//    }
//
//    public void setCreatedBy(String createdBy)
//    {
//        this.createdBy = createdBy;
//    }
//
//    public String getCreatedBy()
//    {
//        return createdBy;
//    }
//
//    public void setCreatedAt(Date createdAt)
//    {
//        this.createdAt = createdAt;
//    }
//
//    public Date getCreatedAt()
//    {
//        return createdAt;
//    }
//
//    public void setUpdatedBy(String updatedBy)
//    {
//        this.updatedBy = updatedBy;
//    }
//
//    public String getUpdatedBy()
//    {
//        return updatedBy;
//    }
//
//    public void setUpdatedAt(Date updatedAt)
//    {
//        this.updatedAt = updatedAt;
//    }
//
//    public Date getUpdatedAt()
//    {
//        return updatedAt;
//    }
//
//    public void setLastUpdated(Date lastUpdated)
//    {
//        this.lastUpdated = lastUpdated;
//    }
//
//    public Date getLastUpdated()
//    {
//        return lastUpdated;
//    }
//
//    @Override
//    public String toString() {
//        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
//            .append("inventoryId", getInventoryId())
//            .append("productId", getProductId())
//            .append("currentQuantity", getCurrentQuantity())
//            .append("lockedQuantity", getLockedQuantity())
//            .append("availableQuantity", getAvailableQuantity())
//            .append("createdBy", getCreatedBy())
//            .append("createdAt", getCreatedAt())
//            .append("updatedBy", getUpdatedBy())
//            .append("updatedAt", getUpdatedAt())
//            .append("lastUpdated", getLastUpdated())
//            .toString();
//    }
}
